BroadcastReceiver ve addproximityalert'de çözemediğim işlem
Merhabalar,
Bir liste içerisinde alarm mantığıyla çalışan bir işlem yaptırıyorum. Listede;
Alarm-1 On
Alarm-2 Off
Alarm-3 On
Alarm-4 On
şeklinde kayıtlar olduğunu varsayalım.
Bir For döngüsü içerisinde Yukrıda On olan kayıtları aşağıdaki metoda gönderiyorum.
private void setProximityAlert(double lat, double lon,float radius, final long eventID, int requestCode)
{
long expiration = -1;
locManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Intent intent = new Intent(PROXIMITY_ACTION);
intent.putExtra(EVENT_ID_INTENT_EXTRAS, eventID);
pendingIntent = PendingIntent.getBroadcast(getApplicationContext(), requestCode, intent, PendingIntent.FLAG_CANCEL_CURRENT);
locManager.addProximityAlert(lat, lon, radius, expiration, pendingIntent);
IntentFilter filter = new IntentFilter(PROXIMITY_ACTION);
receiver = new ProximityIntentReceivers();
registerReceiver(receiver, filter);
}
Sorum şu olacak.
ilgili alarmlardan bir tanesi aktif olduğunda (Örneğin Alarm-1) Broadcastreceiver ilgili uyarıyı gönderiyor burada sorun yok.
bu uyarıdan sonra alarm'ı Off yapmak istiyorum ki tekrar çalışmasın. . BroadcastReceiver içerisinde bunu nasıl yapabilirim. Off yaptıkran sonra Listeyi yenilemem gerekiyor. bunu yeniledikten sonra;
Alarm-3 ve Alarm-4 halen On durumda. Bunları daha önce set ettiğim için tekrar set etmem gerekir mi? Off olan kaydı BroadcastReceiver'dan nasıl kaldırabilirm. Broadcastreceiver'in tetiklendikten sonra ömrü nedir. bir kez çalıştığında tekrar çalışır mı?
Teşekkürler.